package com.yy.micro.magic.core.annotation;

import com.yy.micro.magic.core.condition.Condition;

import org.springframework.stereotype.Component;

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

 /**
   * @author YY
   * @version 1.0.0
   * @update 2021/9/20 9:50 下午
   * @description: 数据变换后对结果做二次处理。
 */
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE)
@Documented
@Component
public @interface Runner {

    /**
     * if plan code is '@',this runner match by condition.
     * @return
     */
    String planCode() default "";

    Class<? extends Condition> condition() default Condition.FalseCondition.class;
}
